﻿ 
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Net;
using System.Threading.Tasks;

namespace AuroraPlatform.Chaneels
{
    public partial class Services
    {
		public async Task<AuroraPlatform.Chaneels.ServiceReference.SignLableResponse> SignLable(AuroraPlatform.Chaneels.ServiceReference.SignLableRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SignLableRequest, AuroraPlatform.Chaneels.ServiceReference.SignLableResponse>(AuroraInterface.BeginSignLable, AuroraInterface.EndSignLable, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.UnSignLableResponse> UnSignLable(AuroraPlatform.Chaneels.ServiceReference.UnSignLableRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.UnSignLableRequest, AuroraPlatform.Chaneels.ServiceReference.UnSignLableResponse>(AuroraInterface.BeginUnSignLable, AuroraInterface.EndUnSignLable, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.GetStaticResourceResponse> GetStaticResource(AuroraPlatform.Chaneels.ServiceReference.GetStaticResourceRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.GetStaticResourceRequest, AuroraPlatform.Chaneels.ServiceReference.GetStaticResourceResponse>(AuroraInterface.BeginGetStaticResource, AuroraInterface.EndGetStaticResource, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchProdNameResponse> SearchProdName(AuroraPlatform.Chaneels.ServiceReference.SearchProdNameRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchProdNameRequest, AuroraPlatform.Chaneels.ServiceReference.SearchProdNameResponse>(AuroraInterface.BeginSearchProdName, AuroraInterface.EndSearchProdName, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.LoginResponse> Login(AuroraPlatform.Chaneels.ServiceReference.LoginRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.LoginRequest, AuroraPlatform.Chaneels.ServiceReference.LoginResponse>(AuroraInterface.BeginLogin, AuroraInterface.EndLogin, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchProdListResponse> SearchProdList(AuroraPlatform.Chaneels.ServiceReference.SearchProdListRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchProdListRequest, AuroraPlatform.Chaneels.ServiceReference.SearchProdListResponse>(AuroraInterface.BeginSearchProdList, AuroraInterface.EndSearchProdList, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.GetUsersResponse> GetUsers(AuroraPlatform.Chaneels.ServiceReference.GetUsersRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.GetUsersRequest, AuroraPlatform.Chaneels.ServiceReference.GetUsersResponse>(AuroraInterface.BeginGetUsers, AuroraInterface.EndGetUsers, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.AddUserResponse> AddUser(AuroraPlatform.Chaneels.ServiceReference.AddUserRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.AddUserRequest, AuroraPlatform.Chaneels.ServiceReference.AddUserResponse>(AuroraInterface.BeginAddUser, AuroraInterface.EndAddUser, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.UpdateUserResponse> UpdateUser(AuroraPlatform.Chaneels.ServiceReference.UpdateUserRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.UpdateUserRequest, AuroraPlatform.Chaneels.ServiceReference.UpdateUserResponse>(AuroraInterface.BeginUpdateUser, AuroraInterface.EndUpdateUser, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.DeleteUserResponse> DeleteUser(AuroraPlatform.Chaneels.ServiceReference.DeleteUserRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.DeleteUserRequest, AuroraPlatform.Chaneels.ServiceReference.DeleteUserResponse>(AuroraInterface.BeginDeleteUser, AuroraInterface.EndDeleteUser, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.AddProdResponse> AddProd(AuroraPlatform.Chaneels.ServiceReference.AddProdRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.AddProdRequest, AuroraPlatform.Chaneels.ServiceReference.AddProdResponse>(AuroraInterface.BeginAddProd, AuroraInterface.EndAddProd, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.UpdateProdResponse> UpdateProd(AuroraPlatform.Chaneels.ServiceReference.UpdateProdRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.UpdateProdRequest, AuroraPlatform.Chaneels.ServiceReference.UpdateProdResponse>(AuroraInterface.BeginUpdateProd, AuroraInterface.EndUpdateProd, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.DeleteProdResponse> DeleteProd(AuroraPlatform.Chaneels.ServiceReference.DeleteProdRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.DeleteProdRequest, AuroraPlatform.Chaneels.ServiceReference.DeleteProdResponse>(AuroraInterface.BeginDeleteProd, AuroraInterface.EndDeleteProd, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchProdClassResponse> SearchProdClass(AuroraPlatform.Chaneels.ServiceReference.SearchProdClassRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchProdClassRequest, AuroraPlatform.Chaneels.ServiceReference.SearchProdClassResponse>(AuroraInterface.BeginSearchProdClass, AuroraInterface.EndSearchProdClass, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchProdSeriesResponse> SearchProdSeries(AuroraPlatform.Chaneels.ServiceReference.SearchProdSeriesRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchProdSeriesRequest, AuroraPlatform.Chaneels.ServiceReference.SearchProdSeriesResponse>(AuroraInterface.BeginSearchProdSeries, AuroraInterface.EndSearchProdSeries, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchPrimaryProdInfoResponse> SearchPrimaryProdInfo(AuroraPlatform.Chaneels.ServiceReference.SearchPrimaryProdInfoRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchPrimaryProdInfoRequest, AuroraPlatform.Chaneels.ServiceReference.SearchPrimaryProdInfoResponse>(AuroraInterface.BeginSearchPrimaryProdInfo, AuroraInterface.EndSearchPrimaryProdInfo, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchPrimaryProdInfoToPDFResponse> SearchPrimaryProdInfoToPDF(AuroraPlatform.Chaneels.ServiceReference.SearchPrimaryProdInfoToPDFRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchPrimaryProdInfoToPDFRequest, AuroraPlatform.Chaneels.ServiceReference.SearchPrimaryProdInfoToPDFResponse>(AuroraInterface.BeginSearchPrimaryProdInfoToPDF, AuroraInterface.EndSearchPrimaryProdInfoToPDF, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchPrimaryProdInfoToExcelResponse> SearchPrimaryProdInfoToExcel(AuroraPlatform.Chaneels.ServiceReference.SearchPrimaryProdInfoToExcelRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchPrimaryProdInfoToExcelRequest, AuroraPlatform.Chaneels.ServiceReference.SearchPrimaryProdInfoToExcelResponse>(AuroraInterface.BeginSearchPrimaryProdInfoToExcel, AuroraInterface.EndSearchPrimaryProdInfoToExcel, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchProdInfoResponse> SearchProdInfo(AuroraPlatform.Chaneels.ServiceReference.SearchProdInfoRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchProdInfoRequest, AuroraPlatform.Chaneels.ServiceReference.SearchProdInfoResponse>(AuroraInterface.BeginSearchProdInfo, AuroraInterface.EndSearchProdInfo, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchProdInfoToPDFResponse> SearchProdInfoToPDF(AuroraPlatform.Chaneels.ServiceReference.SearchProdInfoToPDFRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchProdInfoToPDFRequest, AuroraPlatform.Chaneels.ServiceReference.SearchProdInfoToPDFResponse>(AuroraInterface.BeginSearchProdInfoToPDF, AuroraInterface.EndSearchProdInfoToPDF, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchProdInfoToExcelResponse> SearchProdInfoToExcel(AuroraPlatform.Chaneels.ServiceReference.SearchProdInfoToExcelRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchProdInfoToExcelRequest, AuroraPlatform.Chaneels.ServiceReference.SearchProdInfoToExcelResponse>(AuroraInterface.BeginSearchProdInfoToExcel, AuroraInterface.EndSearchProdInfoToExcel, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchRelationsResponse> SearchRelations(AuroraPlatform.Chaneels.ServiceReference.SearchRelationsRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchRelationsRequest, AuroraPlatform.Chaneels.ServiceReference.SearchRelationsResponse>(AuroraInterface.BeginSearchRelations, AuroraInterface.EndSearchRelations, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.BatchDeleteProdResponse> BatchDeleteProd(AuroraPlatform.Chaneels.ServiceReference.BatchDeleteProdRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.BatchDeleteProdRequest, AuroraPlatform.Chaneels.ServiceReference.BatchDeleteProdResponse>(AuroraInterface.BeginBatchDeleteProd, AuroraInterface.EndBatchDeleteProd, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.CustomExportToExcelResponse> CustomExportToExcel(AuroraPlatform.Chaneels.ServiceReference.CustomExportToExcelRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.CustomExportToExcelRequest, AuroraPlatform.Chaneels.ServiceReference.CustomExportToExcelResponse>(AuroraInterface.BeginCustomExportToExcel, AuroraInterface.EndCustomExportToExcel, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.CustomExportToPDFResponse> CustomExportToPDF(AuroraPlatform.Chaneels.ServiceReference.CustomExportToPDFRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.CustomExportToPDFRequest, AuroraPlatform.Chaneels.ServiceReference.CustomExportToPDFResponse>(AuroraInterface.BeginCustomExportToPDF, AuroraInterface.EndCustomExportToPDF, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchNewProdsResponse> SearchNewProds(AuroraPlatform.Chaneels.ServiceReference.SearchNewProdsRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchNewProdsRequest, AuroraPlatform.Chaneels.ServiceReference.SearchNewProdsResponse>(AuroraInterface.BeginSearchNewProds, AuroraInterface.EndSearchNewProds, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchProdListToPDFResponse> SearchProdListToPDF(AuroraPlatform.Chaneels.ServiceReference.SearchProdListToPDFRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchProdListToPDFRequest, AuroraPlatform.Chaneels.ServiceReference.SearchProdListToPDFResponse>(AuroraInterface.BeginSearchProdListToPDF, AuroraInterface.EndSearchProdListToPDF, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchProdListToExcelResponse> SearchProdListToExcel(AuroraPlatform.Chaneels.ServiceReference.SearchProdListToExcelRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchProdListToExcelRequest, AuroraPlatform.Chaneels.ServiceReference.SearchProdListToExcelResponse>(AuroraInterface.BeginSearchProdListToExcel, AuroraInterface.EndSearchProdListToExcel, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchProdSeriesToPDFResponse> SearchProdSeriesToPDF(AuroraPlatform.Chaneels.ServiceReference.SearchProdSeriesToPDFRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchProdSeriesToPDFRequest, AuroraPlatform.Chaneels.ServiceReference.SearchProdSeriesToPDFResponse>(AuroraInterface.BeginSearchProdSeriesToPDF, AuroraInterface.EndSearchProdSeriesToPDF, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchProdSeriesToExcelResponse> SearchProdSeriesToExcel(AuroraPlatform.Chaneels.ServiceReference.SearchProdSeriesToExcelRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchProdSeriesToExcelRequest, AuroraPlatform.Chaneels.ServiceReference.SearchProdSeriesToExcelResponse>(AuroraInterface.BeginSearchProdSeriesToExcel, AuroraInterface.EndSearchProdSeriesToExcel, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchNewProdsToPDFResponse> SearchNewProdsToPDF(AuroraPlatform.Chaneels.ServiceReference.SearchNewProdsToPDFRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchNewProdsToPDFRequest, AuroraPlatform.Chaneels.ServiceReference.SearchNewProdsToPDFResponse>(AuroraInterface.BeginSearchNewProdsToPDF, AuroraInterface.EndSearchNewProdsToPDF, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

		public async Task<AuroraPlatform.Chaneels.ServiceReference.SearchNewProdsToExcelResponse> SearchNewProdsToExcel(AuroraPlatform.Chaneels.ServiceReference.SearchNewProdsToExcelRequest request)
        {
			try
			{
				return await Task.Factory.FromAsync<AuroraPlatform.Chaneels.ServiceReference.SearchNewProdsToExcelRequest, AuroraPlatform.Chaneels.ServiceReference.SearchNewProdsToExcelResponse>(AuroraInterface.BeginSearchNewProdsToExcel, AuroraInterface.EndSearchNewProdsToExcel, request, null);
            }
            catch (Exception e)
            {
                throw e;
            }
		}

	
    }
}
